package parserjc.jaccie;

/**
 * The StartEndAction interface should be implemented by
 * classes which are interessted in controling a scanner.
 *
 * @author Christoph Reich
 * @version 1.00 09.1997
 */
public interface StartEndAction {

    /**
     * Should be return true if the automata with the spezified name
     * are allowed to testing a scanner input character.
     */
    public abstract boolean startBlocks(String automatName);

    /**
     * Should be return true if the automata with the spezified name
     * are allowed to accumulate a recognized token.
     */
    public abstract boolean endBlocks(String automatName);

    /**
     * Should be do an action for the automata with the spezified name.
     */
    public abstract void actionBlocks(String automatName);

    /**
     * Used for getting an access to the current scanner service.
     * @see ScanService
     */
    public abstract void setScannerService(ScanService scanService);

}